package bean;

import java.io.Serializable;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

@Entity
@Table(name = "ItemsOrdenCompra")
public class ItemOrdenCompraVO implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private RodamientoVO rodamiento;
	private int cantidad;
	private float precioLista;
	private int idItemOrdenCompra;

	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	public int getIdItemOrdenCompra() {
		return idItemOrdenCompra;
	}

	public void setIdItemOrdenCompra(int idItemOrdenCompra) {
		this.idItemOrdenCompra = idItemOrdenCompra;
	}

	@ManyToOne//(cascade = CascadeType.ALL)
	@JoinColumns({ @JoinColumn(name = "codigo"),
			@JoinColumn(name = "caracteristica"), @JoinColumn(name = "marca"),
			@JoinColumn(name = "origen") })
	public RodamientoVO getRodamiento() {
		return rodamiento;
	}

	public void setRodamiento(RodamientoVO rodamiento) {
		this.rodamiento = rodamiento;
	}

	public int getCantidad() {
		return cantidad;
	}

	public void setCantidad(int cantidad) {
		this.cantidad = cantidad;
	}

	public float getPrecioLista() {
		return precioLista;
	}

	public void setPrecioLista(float precioLista) {
		this.precioLista = precioLista;
	}

	public ViewItemOC toView(){
		ViewItemOC v = new ViewItemOC();
		v.setNroItem(this.getIdItemOrdenCompra());
		v.setRodamiento(this.rodamiento.toView());
		v.setCantidad(this.cantidad);
		v.setPrecio(this.precioLista);
		return v;
	}
	
}
